.border_bottom{
    border-bottom:1px solid var(--graydd);
}
.rest_wrap{
    width:100%;
}
.rest_tit{
    width:100%;
    margin-bottom:20px
}
.rest_tit h2{
    font-size:20px;
    font-weight:700;
    color:var(--black222);
    margin-bottom:6px;
    width:calc(100% - 70px);
    height: auto;
    word-break: keep-all;
    line-height: 1.2;
}
.rest_tit span{
    font-size:16px;
    color:var(--gray66);
    font-weight:400;
    font-family:'Noto Sans JP',sans-serif !important;
}


.rest_container{
    width:100%;
}
.rest_desc01{
}
.rest_desc01 .rest_img{
    width:100%;
    height:0;
    padding-bottom:56.25%;
    position:relative;
    overflow: hidden;
    margin-bottom:20px;
}
.rest_desc01 .rest_img img{
    width:100%;
    height:100%;
    object-fit: cover;
    position:absolute;
    left:0;top:0;
    border-radius: .7rem;
}
.rest_desc01 h4.rest_h4{
    font-size:16px;
    color:var(--black222);
    font-weight:700;
    margin-bottom:20px;
    line-height: 1.3;
}
.rest_desc01 .desc{
    font-size:13px;
    color:var(--gray8e);
    line-height:1.5
}

.rest_desc02{
    display:flex;
    gap:5px;
    padding-bottom:25px;
}
.rest_desc02 li{
    /* flex:1; */
    width:33%;
}
.rest_desc02 li:hover{
    cursor: pointer;
}
.rest_desc02 li:hover img{
    opacity: .7;
}
.rest_desc02 li div{
    width:100%;
    height:0;
    padding-bottom:100%;
    position:relative;
    overflow: hidden;
    margin-bottom:10px;
}
.rest_desc02 li img{
    width:100%;
    height:100%;
    position:absolute;
    left:0; top:0;
    object-fit: cover;
    transition: .5s;
    border-radius: 5px;;
}
.rest_desc02 li h5{
    font-size:14px;
    color:var(--black222);
    font-weight: 500;
    line-height:1.3
}
.rest_desc02 li p{
    font-size:13px;
    color:var(--blue00);
}


.bookSite {
    display:flex;
    gap:10px 0;
    flex-wrap:wrap;
}
.bookSite li{
    width:50%;
    margin-bottom:20px;
    text-align: left;;
}
.bookSite li a{
    font-size:16px;
    line-height: 40px;
    display:block;
    color: var(--gray44);
}
.bookSite li a img{
    width:40px;
    height:40px;
    margin-right:5px;
}


.tag_list{
    display:flex;
    gap:5px;
    flex-wrap:wrap;
    justify-content: center;
}
.tag_list li{
    padding:9px 15px;
    border:1px solid #ddd;
    border-radius: 5px;
    font-size:13px;
    color:#555;;
    height:34px;
    display:flex;
    gap:5px;
    align-items: center;;
}

.tag_list li i{
    width:15px;
    height:15px;
    display: inline-block;
    font-size:15px;
}
.tag_list li svg{
  color:var(--gray55);
}
.tag_list li .i-breakfast{
    background:url(../images/i-breakfast.jpg?v=2) center no-repeat;
    background-size:100%;
}
.tag_list li .i-lunch{
    background:url(../images/i-lunch.jpg?v=2) center no-repeat;
    background-size:100%;
}
.tag_list li .i-dinner{
    background:url(../images/i-dinner.jpg?v=2) center no-repeat;
    background-size:100%;
}







.servi_icon{
    width:100%;
    display:flex;
    gap:5px;
    flex-wrap:wrap;
    margin-top:8px;
}
.servi_icon li{
    vertical-align: top;
    font-size:13px;
    margin-bottom:6px;
    text-align: center;
}
.servi_icon li img{
    display:block;
    width:30px;
    height:30px;
    margin:0 auto 5px;
}
.rest_desc03{
    gap:10px 20px;
    justify-content: center;
}
.rest_desc03 li{
    font-size:11px;
    margin-bottom:6px;
    text-align: center;
    vertical-align: top;
}
.rest_desc03 li img{
    display:block;
    width:30px;
    height:30px;
}




.rest_detail_info{
    border-bottom:1px solid var(--graydd)
}
.rest_detail_info:last-of-type{
    border-bottom:0;
}

.rest_detail_info p{
    font-size:14px;
    color:var(--gray66);
    line-height:1.5;
}
.rest_detail_info p.cost{
    display:flex;
    gap:0 6px;
    align-items: center;
    flex-wrap: wrap;
}
.rest_detail_info p.cost span{
    display: flex;
    align-items: center;
    gap:3px;
}
.rest_detail_info p a{
    color:var(--gray66);
}

/* 식사금액 아이콘 */
.rest_detail_info p.cost span i{
    width:15px;
    height:15px;
    display: inline-block;
}
.rest_detail_info p.cost span .i-breakfast{
    background:url(../images/i-breakfast.jpg?v=2) center no-repeat;
    background-size:100%;
}
.rest_detail_info p.cost span .i-lunch{
    background:url(../images/i-lunch.jpg?v=2) center no-repeat;
    background-size:100%;
}
.rest_detail_info p.cost span .i-dinner{
    background:url(../images/i-dinner.jpg?v=2) center no-repeat;
    background-size:100%;
}


.rest_detail_info h3{
    font-size:17px;
    color:var(--black222);
    font-weight: 700;
    display:flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom:15px;
}
.rest_detail_info h3 span{
    display: inline-block;
    font-weight: 400;
    font-size:14px;
}
.rest_detail_info h3 span img{
    width:100px;
}

.rest_detail_info .loca{
    height:250px;
    margin-bottom:8px;
}
.rest_detail_info .loca + p{
    font-size:14px;
    line-height:1.3;
    color:var(--gray66);
}

.rest_detail_info .sales_time_etc{
  width:100%;
  >p{
    font-size:15px;
    color:var(--black22);
    font-weight: 500;
    position:relative;
    padding-left:14px;
    &:before{
      content:"";
      position:absolute;
      left:0;
      top:7px;
      background:var(--black22);
      width:8px;
      height:8px;
      border-radius:4px;
    }
  }
}
.rest_detail_info .rest_sales_box{
    width:100%;
    margin-top:10px;
    padding:0;
}
.rest_detail_info .rest_sales_box dl{
    display:block;
    align-items: flex-start;
}
.rest_detail_info .rest_sales_box dl dt{
    width:auto ;
    font-size:15px ;
    color:var(--black22);
    font-weight: 500;
    margin-top:0;
    margin-bottom:10px;
}
.rest_detail_info .rest_sales_box dl dt span{
    font-size:15px;
    font-weight: 500;;
  }
  .rest_detail_info .rest_sales_box dl dd{
      width:calc(100% - 100px);
      font-size:14px;
      color:#555;
  }
.rest_detail_info .rest_sales_box dl.today dd{
    display:flex;
    align-items: center;
    gap:3px;
    flex-wrap: wrap;
}
.rest_detail_info .rest_sales_box dl.today dd span{
    color:#388cff;
    padding-left:13px;
  }
  .rest_detail_info .rest_sales_box dl.today dd span.last_order{
      line-height:1.2;
      display:inline-block;
  }
.rest_detail_info .rest_sales_box dl.today dd span.holiday,
.rest_detail_info .rest_sales_box dl.today dd span.close{
    color:#fc3b30;
}
.rest_detail_info .rest_sales_box dl.today dd span.open{
    color:#01b453;
}
.rest_detail_info .rest_sales_box dl.today dd span.ready{
    color:#ff7629;
}
.rest_detail_info .rest_sales_box dl.today > p.flex{
    gap:5px;
}
.rest_detail_info .rest_sales_box dl dt i,
.rest_detail_info .rest_sales_box dl.salesTime dd i{  
    display:inline-block;
    width:8px;
    height:8px;
    border-radius: 50%;;
}
.rest_detail_info .rest_sales_box dl.today dt i{
    background:#388cff;
}
.rest_detail_info .rest_sales_box dl.holiday dt i{
    background:#fc3b30;
}
.rest_detail_info .rest_sales_box dl.salesTime dd i{
    background:#444;
}
.rest_detail_info .rest_sales_box dl.salesTime dd{
    display:flex;
    gap:5px;
    align-items: center;
    font-weight: 500;
}
.rest_detail_info .rest_sales_box dl.holiday span.small{
    font-size:13px;
    color:var(--gray8e);
    display: block; 
    line-height: 1.4;
}
.rest_sales_box .today_time span,
.rest_sales_box .today_days span{
  font-size:14px;
  color: var(--black22);
}
.rest_sales_box .today_days dd p{
  font-size:14px;
  color: #388cff;
  margin:10px 0 0 13px;
}
.rest_detail_info.Pop{
    width:80%;
    position:fixed;
    top:50%;
    left:50%;
    transform: translate(-50%, -50%);
    background:#fff;
    border-radius: 5px;
    padding:20px;
    z-index:1001;

}
.rest_detail_info.Pop .close{
    position: absolute;
    top: -40px;
    left:50%;
    transform: translateX(-50%);
    width: 30px;
    height: 30px;
    background: url("../images/ico-close-white.svg") no-repeat 50% 50%;
    background-size:25px;
}


.rest_more{
    width:100%;
    display:flex;
    flex-direction: column;
    gap:7px;
  }
.rest_more button{
    flex:1;
    height:35px;
    line-height: 35px;;
    font-size:14px;
    border:1px solid var(--surfcolor);
    color:var(--surfcolor);
    border-radius: 4px;;
}

.rest_more dl{
    display:flex;
    align-items: center;
    gap:10px;
    font-size:14px;
}
.rest_more dl dt{
    color:var(--black22);
    font-size:14px;
    font-weight: 500;
    margin-bottom:0;
    width:40px;
}
.rest_more dl dt img{
    width:25px;
}
.rest_more dl dd{
    text-overflow: ellipsis;
    width:calc(100% - 100px);
    overflow:hidden;
    white-space: nowrap;
    line-height: 25px;;
}



/* 실시간검색 */
.search_flex {
    justify-content: center;
    margin:0 auto 10px;
    padding-top:0;
  }
  .search_flex > div{
    width:100%;
    padding:0;
  }
 
  .select_conbox {
    display: flex;
    gap: 5px;
    margin: 10px 0 5px;
  }
  .select_conbox select {
    height: 100%;
    font-size: 14px;
    color: #555;
    background: #fff url("../images/ico-down.svg") no-repeat calc(100% - 7px)
      50% / 10px;
    padding:0 7px;
  }
  .select_conbox > div {
    height: 35px;
    padding-left: 25px;
    border: 1px solid #ddd;
    border-radius: 4px;
  }
  .select_conbox .inwon {
    flex: 1;
    background: url(../images/search_icon01.jpg) 3px center no-repeat;
    background-size: 21px;
  }
  .select_conbox .calendar {
    flex: 1;
    background: url(../images/search_icon02.jpg) 3px center no-repeat;
    background-size: 18px;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding-left: 21px;
    font-size: 14px;
    color: #555;
  }
  .select_conbox .calendar input {
    width: 100%;
    height: 100%;
    cursor: pointer;
    font-size: 14px;
    padding:0 7px;
  }
  .select_conbox .time {
    flex: 1;
    background: url(../images/search_icon03.jpg) 3px center no-repeat;
    background-size: 21px;
  }
  .submit_reset_box{
    display:flex;
    gap:5px;
  }
  .submit_reset_box .search_btn {
    padding: 7px 20px;
    background:var(--surfcolor);
    color:var(--whiteff);
    font-size: 14px;
    border-radius: 4px;
    width:calc(100% - 35px);
  }
  .submit_reset_box .reset_btn{
    width:30px;
    box-sizing: border-box;
    border:1px solid var(--surfcolor);
    color: var(--surfcolor);
    border-radius: 4px;
  }
  .submit_reset_box .reset_btn i{
    font-size:20px;
  }
  
  .search_cate_wrap {
    display: flex;
    gap: 20px;
    justify-content: space-between;
    align-items: center;
    margin-bottom:10px;
  }
  .search_cate_wrap button.plus {
    width: auto;
    height: 30px;
    display: flex;
    align-items: center;
    z-index: 1;
    border-radius: 5px;
    font-size: 14px;
  }
  .search_cate_wrap button img {
    width: 20px;
    margin-top: 3px;
  }
  .select_area,
  .select_area a{
    font-size: 20px;
    font-weight: bold;
    color: #222;
  }
  
  .search_category {
    margin-bottom: 10px;
    width: calc(100% - 30px);
    overflow: hidden;
  }
  
  .search_cate {
    display: flex;
    gap: 10px;
  }
  .search_cate.swiper-wrapper {
    width: auto;
    height: auto;
  }
  .search_cate li {
    padding: 8px 20px;
    border: 1px solid #444;
    border-radius: 4px;
    font-size: 15px;
    width: auto;
  }
  .search_cate li a {
    color: #444;
  }
  .search_cate li.active,
  .search_cate li:hover {
    background: #ff6600;
    border: 1px solid #ff6600;
  }
  .search_cate li.active a,
  .search_cate li:hover a {
    color: #fff;
  }
  /*슬라이드*/
  .swiper-wrapper{
    height: auto;
  }

/* //실시간검색 */

/* 2주캘린더 */

.week_seat_tb {
    width: 100%;
    border: 1px solid #ddd;
    border-collapse: collapse;
    margin-top:10px;
  }
  .week_seat_tb .tb_tit {
    background: #f1f1f1;
    width: 50px;
  }
  .week_seat_tb .tb_tit i {
    display: block;
  }
  .week_seat_tb th {
    border-bottom: 1px solid #ddd;
  }
  .week_seat_tb th i {
    font-size: 20px;
  }
  .week_seat_tb th:not(:last-child),
  .week_seat_tb td:not(:last-child) {
    border-right: 1px solid #ddd;
  }
  .week_seat_tb th,
  .week_seat_tb td {
    font-size: 12px;
    color: var(--gray66);
    font-weight: normal;
    text-align: center;
    padding: 3px 0;
  }
  .week_seat_tb td:nth-child(1),
  .week_seat_tb td:nth-child(2),
  .week_seat_tb td:nth-child(3),
  .week_seat_tb td:nth-child(4),
  .week_seat_tb td:nth-child(5),
  .week_seat_tb td:nth-child(6),
  .week_seat_tb td:nth-child(7){
    border-bottom:1px solid #ddd;
  }
  .week_seat_tb .sat {
    color: var(--skyblue00);
  }
  .week_seat_tb .sun {
    color: var(--redec);
  }
  .week_seat_tb span {
    display: block;
    margin-bottom: 6px;
  }
  .week_seat_tb td p{
    color:var(--redec);
    font-size:14px;
    font-weight: 500;
  }
  .week_seat_tb td.pick{
    background:var(--surfcolor);
  }
  .week_seat_tb td.pick p,
  .week_seat_tb td.pick span{
    color:#fff;
  }
  
  .week_seat_tb th mark{background:transparent; display: block; color:#666; margin-bottom:2px;}
  
/* 예약가능시간 */

.reser_time_btn_wrap.swiper{
    display:none;
}
.reser_time_btn{
width:100%;
display:flex;
gap:7px;
overflow-y: scroll;
}
.reser_time_btn::-webkit-scrollbar{
width:5px;
}
.reser_time_btn::-webkit-scrollbar-track,
.reser_time_btn::-webkit-scrollbar-thumb{
background-color:transparent;
}
.reser_time_btn li{
padding:10px 20px;
border-radius: 50px;
font-size:13px;
color:#fff;
background:var(--surfcolor);
width:auto;
}

/* 상세정보 */

.rest_detail_info.facil dl{
    display:flex;
    gap:10px;
    border-bottom:1px dashed #ddd;
}
.rest_detail_info.facil dl dt{
    width:100px;
    font-size:15px;
    color:var(--black222);
    font-weight: 400;
    line-height: 1.1;
    margin-bottom:8px;
}
.rest_detail_info.facil dl dd{    
    font-size:15px;
    color:var(--gray66);
    font-weight: 400;
    line-height: 1.1;;
    width:calc(100% - 110px);
}



/* 달력 */
.calendar_box{
    width:100%;
    margin:auto;
    margin:10px 0;
}
.calendar_box .cal_nav{
    display:flex;
    justify-content: space-between;
    align-items: center;
    font-weight: 700;
    font-size:48px;
    width:100%;
    max-width:300px;
    margin:0 auto 10px;
}
.calendar_box .cal_nav .nav_btn{
    width:24px;
    height:24px;
    font-size:0;
    margin-top:16px;
}
.calendar_box .cal_nav .nav_btn.prev-week,
.calendar_box .cal_nav .nav_btn.prev{
    background:url(../images/ico-prev.svg?v=1) center no-repeat;
    background-size:23px;
}
.calendar_box .cal_nav .nav_btn.next-week,
.calendar_box .cal_nav .nav_btn.next{
    background:url(../images/ico-next.svg?v=1) center no-repeat;
    background-size:23px;
}
.calendar_box .cal_nav .year_month{
    display: flex;
    align-items: center;
    justify-content: center;
    margin:auto;
}
.calendar_box .cal_nav .year_month p{
    font-size:21px;
    color:#222;
    font-weight: 700;
    margin: 0px 10px 0 0;
    position:relative;
}
.calendar_box .cal_nav .year_month h3{
    font-size:23px;
    font-weight: 700;
    color:#222;
    margin-bottom:0;
    margin-top:0px;
}

.calendar_box .days{
    width:100%;
    display:flex;
    flex-wrap:wrap;
}
.calendar_box .days div.day{
    width:calc(100% / 7);
    font-size:15px;
    color:#222;
    font-weight: 500;
    text-align:center;
    padding:6px 0;;
}
.calendar_box .days div.day.disable{
    opacity: 0;
}
.calendar_box .days div.day.rest,
.calendar_box .days div.day.sun{
    color:#fc3b30!important;
}

.calendar_box .days.week_days{
    width:100%;
}

.calendar_box .days.weekend{
    display:none;
}
.calendar_box .days .day span{
    width:24px;
    height:24px;
    border-radius: 50%;
    line-height:24px;
    display:block;
    margin:auto;;
}
.calendar_box .days .day.today span{
    color:#222;
    background:#fff;
}
.calendar_box .days .day.holiday span,
.calendar_box .days .day.rest span{
    color:#fff;
    background:#fc3b30;
}

.calendar_box .days_day{
    /* display: none;; */
}
.calendar_box .days_day.on{
    display:flex;
}
/* .calendar_box .rest_sales_box{
    width:100%;
    margin-top:10px;
    padding:0 20px;
} 
    .rest_sales_box dl{
    display:flex;
    align-items: flex-start;
    margin-bottom:8px;
}
.calendar_box .rest_sales_box dl dt{
    width:100px;
    font-size:14px;
    color:#555;
    font-weight: 500;
}
.calendar_box .rest_sales_box dl dd{
    width:calc(100% - 100px);
    font-size:14px;
    color:#555;
}
.calendar_box .rest_sales_box dl.today dd{
    display:flex;
    align-items: center;
    gap:3px;
    flex-wrap: wrap;
}
.calendar_box .rest_sales_box dl.today dd span.last_order{
    line-height:1.2;
    display:inline-block;
}
.calendar_box .rest_sales_box dl.today dd span.holiday,
.calendar_box .rest_sales_box dl.today dd span.close{
    color:#fc3b30;
}
.calendar_box .rest_sales_box dl.today dd span.open{
    color:#01b453;
}
.calendar_box .rest_sales_box dl.today dd span.ready{
    color:#ff7629;
}
.calendar_box .rest_sales_box dl.today > p.flex{
    gap:5px;
}
.calendar_box .rest_sales_box dl dt i,
.calendar_box .rest_sales_box dl.salesTime dd i{  
    display:inline-block;
    width:8px;
    height:8px;
    border-radius: 50%;;
}
.calendar_box .rest_sales_box dl.today dt i{
    background:#388cff;
}
.calendar_box .rest_sales_box dl.holiday dt i{
    background:#fc3b30;
}
.calendar_box .rest_sales_box dl.salesTime dd i{
    background:#444;
} */
.calendar_box .rest_sales_box dl.salesTime dd{
    display:flex;
    gap:5px;
    align-items: center;
    font-weight: 500;
}
.calendar_box .rest_sales_box dl.holiday span.small{
    font-size:13px;
    color:var(--gray8e);
    display: block; 
    line-height: 1.4;
}
.calendar_box .arrow_down{
    background:url(../images/arrow-down.svg) center no-repeat;
    background-size:20px;
    width:24px;
    height:24px;
    margin:0px auto 10px;
}
.calendar_box .arrow_down.on{
    background:url(../images/arrow-up.svg?v=1) center no-repeat;
    background-size:20px;
}

.calendar_box .days .day.on span{
    background:#388cff;
    color:#fff;
}


/* //달력 */


/* 예약에대한 추가안내 */

.rest_announ ul{
    padding-left:20px;
  }
  .rest_announ ul li{
    font-size:14px;
    line-height:1.5;
    color:var(--gray44);
    margin-bottom:10px;
    list-style-type: disc;
  }
  .rest_announ a.add_announ{
    text-align: center;
    display:block;
    color:var(--surfcolor);
    text-decoration: underline;
  }
  
/* //예약에대한 추가안내 */



/* 계속보기 팝업 */
.img_pop, .copy_pop{
    width:80%;
    background:#fff;
    padding:20px;
    position:fixed;
    top:50%;
    left:50%;
    border-radius: 5px;
    transform: translate(-50%, -50%);
    z-index: 1001;
    display: none;
}
.img_pop span, 
.copy_pop span{
    position:absolute;
    top:-40px;
    left:50%;
    transform: translateX(-50%);
    width:30px;
    height:30px;
    background:url(../images/ico-close-white.svg) center no-repeat;
    background-size:25px;
}
.img_pop img{
    width:100%;
    max-width:640px;
    max-height: 700px;
    object-fit: cover;
    display:block;
    margin:0 auto 20px;
}
.img_pop h5{
    font-size:16px;
    color:var(--black222);
}
.img_pop p{
    font-size:14px;
    line-height: 1.1;
    color:var(--gray66);
}

.copy_pop ul li{
    font-size:14px;
    line-height:1.1;
    margin-bottom:20px;
}
.copy_pop ul li input[type="radio"]{
    display:none;
}
.copy_pop ul li input[type="radio"] + label{
    height:40px;
    background:url(../images/radio.svg)left center no-repeat;
    background-size:17px;
    padding-left:21px;
}
.copy_pop ul li input[type="radio"]:checked + label{
    background:url(../images/radio_on.svg)left center no-repeat;
    background-size:17px;
}
.copy_pop ul + button.copy_btn{
    width:100%;
    height:35px;
    color:#fff;
    background:#222;
    border-radius: 5px;;
}